<?php

class Administracion_IndexController extends Zend_Controller_Action {

    public function init() {
        //$this->redirect('Autentifica/login');
        $this->view->baseUrl = $this->_request->getBaseUrl();   

        $namespace = new Zend_Session_Namespace("User_Session");
        if ($namespace->idRol != 1 ) {
            //$this->_redirect('index/index?expired=yes');
            $this->_redirect('index');
        }
        //Si el usuario no ha activado su cuenta, se redirecciona para que la active.
        /*if ($namespace->cuentaActiva == 0) {
            $this->_redirect('/autentifica/activarcuenta');
        }*/
    }

    public function preDispatch() {
        $options = array(
            'layout' => 'administracionlayout',
        );
        Zend_Layout::startMvc($options);
    }

    public function indexAction() {
        
        /*
        $beneficiarios = new Application_Model_DbTable_Beneficiarios();
        $beneficiario = $beneficiarios->datosSesionFuncionarios(1);
        var_dump($beneficiario);
         */
    }

    public function cuentaAction() {
        $usuarios = new Application_Model_DbTable_Usuarios();
        $roles = new Application_Model_DbTable_Roles();
        $facultades = new Application_Model_DbTable_Facultades();
        $namespace = new Zend_Session_Namespace("User_Session");
        $query = $usuarios->consultar($namespace->codigo);
        $rol = $roles->consultar($query->idRol);
        $facultad = $facultades->consultar($query->codigoFacultad);
        $this->view->codigoFacultad = $query->codigoFacultad;
        $query->idRol = $rol->descripcion;
        $query->codigoFacultad = $facultad->nombreFacultad;
        $this->view->usuario = $query;
        $row = $facultades->getall()->toArray();
        $this->view->facultades = $row;

        if ($this->getRequest()->isXmlHttpRequest()) {
            $this->_helper->viewRenderer->setNoRender();
            $this->_helper->layout->disableLayout();
            $aux = $this->_request->getPost("aux");

            if ($aux == "actualizar") {
                $codigo = $this->_request->getPost("codigo");
                $facultad2 = $this->_request->getPost("facultad");
                $nombre = $this->_request->getPost("nombres");
                $apellido = $this->_request->getPost("apellidos");
                $email = $this->_request->getPost("email");
                $direccion = $this->_request->getPost("direccion");
                $telefono = $this->_request->getPost("telefono");
                $celular = $this->_request->getPost("celular");

                $usuarios->actualizarCuenta($codigo, $facultad2, $nombre, $apellido, $email, $direccion, $telefono, $celular);
                $namespace->Facultad = $facultad2;
                $retorno = 1;
            } else {
                if ($aux == "contraseña") {
                    $claveActual = $this->_request->getPost("claveActual");
                    $claveActual = $claveActual . '%2+7FVJ.tQuWa8ssM2@J"pb*>nDnZ0x:p\C';
                    if (md5($claveActual) == $usuarios->getClave($query->idUsuario)) {
                        $claveNueva1 = $this->_request->getPost("claveNueva1") . '%2+7FVJ.tQuWa8ssM2@J"pb*>nDnZ0x:p\C';
                        $usuarios->actualizarClave($query->idUsuario, md5($claveNueva1));
                        $retorno = 1;
                    } else {
                        $retorno = "Contraseña actual incorrecta";
                    }
                } else {
                    $namespace = new Zend_Session_Namespace("User_Administrador");
                    $query = $usuarios->consultar($namespace->codigo);
                    $rol = $roles->consultar($query->idRol);
                    $facultad = $facultades->consultar($query->codigoFacultad);
                    $query->idRol = $rol->descripcion;
                    $retorno = Zend_Json::encode($query);
                }
            }
            echo $retorno;
        }
    }
}
?>

